﻿using AutoMapper;
using B.S.Sterilizationcenter.Domain.wjl;
using B.S.Sterilizationcenter.Domain.yjb;
using B.S.Sterilizationcenter.Domain.zmc;
using B.S.Sterilizationcenter.Domain.zyy;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.WJL;
//using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Zmc.Apparatus;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Yjb.ConsumableMaterials;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Zmc.Apparatu;
using B.S.Sterilizationcenter.Domain.zyy;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Zyy;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Yjb.Devices;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Yjb.ResultItemInf;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Yjb.ProgramInf;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Yjb.ResultItemInfoss;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Zyy.Usages;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Zyy.Returns;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Zmc.Warehou;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Zmc.Instrumentkit;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Yjb.PrescriptionCheck;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Yjb.MedicineDistribution;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Yjb.MedicineInventory;
using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Yjb.PendingPrescription;
//using B.S.Sterilizationcenter.Writer.API.Appliaction.Commends.Zmc.Apparatus;


namespace B.S.Sterilizationcenter.Writer.API
{
    public class AutoMapperProfiles : Profile
    {
        public AutoMapperProfiles() {

            //器械创建
            CreateMap<CreateApparatusCommends, Apparatus>().ReverseMap();
            CreateMap<UpdataApparatusCommends, Apparatus>().ReverseMap();
            //器械类型创建
            CreateMap<CreateApparatusTypeCommends, ApparatusType>().ReverseMap();

            CreateMap<UpdataInstrumentkitCommends, Instrumentkits>().ReverseMap();
            

            //耗材字典
            CreateMap<AddConsumableMaterialCommand, ConsumableMaterial>().ReverseMap();
            CreateMap<UpdateConsumableMaterialCommand, ConsumableMaterial>().ReverseMap();
            CreateMap<AddConsumTypeCommand, ConsumType>().ReverseMap();
            //设备字典
            CreateMap<AddProgramInfoCommand, ProgramInfo>().ReverseMap();
            CreateMap<UpdateProgramInfoCommand, ProgramInfo>().ReverseMap();
            CreateMap<AddDeviceCommand, Device>().ReverseMap();
            CreateMap<UpdateDeviceCommand, Device>().ReverseMap();
            CreateMap<AddResultItemInfoCommand, ResultItemInfo>().ReverseMap();
            CreateMap<UpdateResultItemInfoCommand, ResultItemInfo>().ReverseMap();
            CreateMap<AddResultItemInfosCommand, ResultItemInfos>().ReverseMap();
            CreateMap<UpdateResultItemInfosCommand, ResultItemInfos>().ReverseMap();

            // 药品管理相关映射
            CreateMap<AddPrescriptionCheckCommand, PrescriptionCheck>().ReverseMap();
            CreateMap<UpdatePrescriptionCheckCommand, PrescriptionCheck>().ReverseMap();
            CreateMap<AddMedicineDistributionCommand, MedicineDistribution>().ReverseMap();
            CreateMap<UpdateMedicineDistributionCommand, MedicineDistribution>().ReverseMap();
            CreateMap<AddMedicineInventoryCommand, MedicineInventory>().ReverseMap();
            CreateMap<UpdateMedicineInventoryCommand, MedicineInventory>().ReverseMap();
            CreateMap<AddPendingPrescriptionCommand, PendingPrescription>().ReverseMap();
            CreateMap<UpdatePendingPrescriptionCommand, PendingPrescription>().ReverseMap();

            //设备
            CreateMap<AddShelfdictionarycommand,Shelfdictionary>().ReverseMap();
            CreateMap<UpdateShelfdictionarycommand,Shelfdictionary>().ReverseMap();
            //领用申请
            CreateMap<AddReceivingApplicationcommand, ReceivingApplication>().ReverseMap();
            CreateMap<UpdateReceivingApplicationcommand, ReceivingApplication>().ReverseMap();
            //使用管理
            CreateMap<DeleteUsageCommand, UsageManagement>().ReverseMap();
            CreateMap<UpdateUsagecommand, UsageManagement>().ReverseMap();
            //回收保存
            CreateMap<AddReturnApplicationCommands, ReturnApplication>().ReverseMap();
            CreateMap<AddReturnApplicationCommands, Recycleitems>().ReverseMap();
            CreateMap<AddReturnApplicationCommands, ItemTable>().ReverseMap();
            CreateMap<UpdateRevokecollectionCommands, ReturnApplication>().ReverseMap();
            CreateMap<DelCleanwatchCommands, Cleanwatch>().ReverseMap();
            CreateMap<AddCleanwatchCommands, Cleanwatch>().ReverseMap();
            CreateMap<AddCleanwatchCommands, CleanwatchItemed>().ReverseMap();
            CreateMap<AddCleanwatchCommands, ItemTable>().ReverseMap();
            CreateMap<UpdateCleanwatchCommands, Cleanwatch>().ReverseMap();
            CreateMap<UpdateAuditCleanwatchCommands, Cleanwatch>().ReverseMap();
            CreateMap<QuashCleanwatchCommands, Cleanwatch>().ReverseMap();
        }
    }
}
